home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
program
/
gemxx19.zoo
/
gem++19
/
man
/
vdi.man
< prev
Wrap
Text File
|
1993-05-04
|
11KB
|
327 lines
GEM++ - C++ LIBRARIES FOR GEM/AES/VDI
NAME
VDI - class-based Virtual Device Interface
DESCRIPTION
This class simplifies usage of the VDI functions by encapsulating
the vdi_handle in the class.
All methods are identically named as the original VDI calls, except
the leading "v" or "v_" is removed.
CONSTRUCTORS
VDI()
A virtual workstation VDI based on the AES workstation.
VDI(VDI&)
Duplicate workstation.
VDI(const char* metafile)
** UNTESTED **
VDI(short* raster)
This is an experimental hack. Ignore it.
METHODS
int operator!()
TRUE if the constructor failed.
SHORTHAND METHODS
int st_height(int height)
int st_point(int point)
void st_alignment(int hin, int vin)
void clip()
Clip to full area of device
void clip(int x1, int y1, int x2, int y2)
Clip to area
void clip_off()
No clipping
void bar(int x1, int y1, int x2, int y2)
void rbox(int x1, int y1, int x2, int y2)
void rfbox(int x1, int y1, int x2, int y2)
void line(int x1, int y1, int x2, int y2)
void marker(int x, int y)
void r_recfl(int x1, int y1, int x2, int y2)
Non Pxyarray versions. (slower, easier)
const int SRC=3
const int DST=5
Combine SRC and DST using any logical operators for raster mode.
eg. VDI::SRC|VDI::DST gives "or" mode.
void ro_cpyfm(int mode, int pxyarray[], VDI& from)
void rt_cpyfm(int mode, int pxyarray[], VDI& from, int color[]);
void r_trnfm(VDI& from)
Unary version - destination is this VDI
void ro_cpyfm(int mode, int pxyarray[])
void rt_cpyfm(int mode, int pxyarray[], int color[]);
void r_trnfm()
Nullary version - source and destination is this VDI
const MFDB& MF() { return mfdb; }
GLOBAL METHODS
void clrwk()
void updwk()
CONSTANT METHODS (WorkOut and ExtWorkOut values)
int MaxX()
int MaxY()
int Width()
int Height()
bool PreciseScaling()
int PixelWidth()
in microns
int PixelHeight()
in microns
int NumberOfCharacterHeights()
int NumberOfLineTypes()
int NumberOfLineWidths()
0 = only default
int NumberOfMarkerTypes()
int NumberOfMarkerSizes()
int NumberOfTextFaces()
int NumberOfPatterns()
int NumberOfHatchStyles()
int NumberOfPredefinedColours()
int NumberOfAvailableColours()
int NumberOfGDPs()
int GDP(int i)
0 <= i <= 9
int GDPAttribute(int i)
0 <= i <= 9
bool Colour()
bool RotateTextWorks()
bool FillAreaWorks()
bool CellArrayWorks()
int NumberOfLocators()
int NumberOfValidators()
int NumberOfChoosers()
int NumberOfStringDevices()
int WorkstationType()
bool CanOutput()
bool CanInput()
bool IsMetafile()
int ScreenType()
int NumberOfBackgroundColours()
bool TextEffectsSupported()
bool ScalableRasters()
int NumberOfPlanes()
bool TrueColor()
int Speed()
bool ContourFillSupported()
int CharacterRotationType()
int NumberOfWritingModes()
int InputModesAvailable()
bool TextAlignmentSupported()
bool InkingSupported()
int RubberbandingSupported()
int MaximumVertices()
int MaximumIntin()
int NumberOfMouseButtons()
bool StyledWideLinesSupported()
bool WideLinesWriteModesSupported()
int Charwidth()
int Charheight()
int Charcellwidth()
int Charcellheight()
ATTRIBUTE METHODS
int swr_mode (int mode)
void s_color (int index, int rgb[])
int sl_type (int style)
void sl_udsty (int pat)
int sl_width (int width)
int sl_color (int index)
void sl_ends (int begstyle, int endstyle)
int sm_type (int symbol)
void sm_height (int height)
int sm_color (int index)
int st_height (int height, int *charw, int *charh, int *cellw, int *cellh)
int st_point (int point, int *charw, int *charh, int *cellw, int *cellh)
int st_rotation (int ang)
int st_font (int font)
int st_color (int index)
int st_effects (int effects)
void st_alignment (int hin, int vin, int *hout, int *vout);
int sf_interior (int style)
int sf_fill (int style)
int sf_style (int style)
int sf_color (int index)
int sf_perimeter (int vis)
void sf_udpat (int pat[], int planes)
int st_load_fonts (int select)
void st_unload_fonts (int select)
void s_clip (int clip_flag, int pxyarray[])
OUTPUT METHODS
void bar (int pxyarray[])
void arc (int x, int y, int radius, int begang, int endang);
void pieslice (int x, int y, int radius, int begang, int endang)
void circle (int x, int y, int radius)
void ellarc (int x, int y, int xrad, int yrad, int begang, int endang)
void ellpie (int x, int y, int xrad, int yrad, int begang, int endang)
void ellipse (int x, int y, int xrad, int yrad)
void rbox (int pxyarray[])
void rfbox (int pxyarray[])
void justified (int x, int y, char *str, int len, int word_space, int char_space)
void pline (int count, int pxyarray[])
void pmarker (int count, int pxyarray[])
int gtext (int x, int y, char *str)
void fillarea (int count, int pxyarray[])
void cellarray (int pxyarray[], int row_length, int elements, int nrows, int write_mode, int colarray[])
void contourfill (int x, int y, int index)
void r_recfl (int pxyarray[])
void ro_cpyfm (int mode, int pxyarray[], const MFDB& src, const MFDB& dst)
void rt_cpyfm (int mode, int pxyarray[], const MFDB& src, const MFDB& dst, int color[]);
void r_trnfm (const MFDB& src, const MFDB& dst)
void get_pixel (int x, int y, int *pel, int *indx);
INPUT METHODS
int sin_mode (int dev, int mode)
void rq_locator (int x, int y, int *xout, int *yout, int *term);
int sm_locator (int x, int y, int *xout, int *yout, int *term)
void rq_valuator (int in, int *out, int *term)
void sm_valuator (int in, int *out, int *term, int *status)
void rq_choice (int cin, int *cout)
int sm_choice (int *choice)
void rq_string (int len, int echo, int echoxy[], char *str)
int sm_string (int len, int echo, int echoxy[], char *str)
void sc_form (int form[])
void ex_timv (void *time_addr, void **otime_addr, int *time_conv);
void show_c (int reset)
void hide_c ()
void q_mouse (int *pstatus, int *x, int *y)
void ex_butv (void *new_p, void **old)
void ex_motv (void *new_p, void **old)
void ex_curv (void *new_p, void **old)
void q_key_s (int *state)
INQUIRY METHODS
void q_extnd (int flag, int work_out[])
int q_color (int index, int flag, int rgb[])
void ql_attribute (int atrib[])
void qm_attributes (int atrib[])
void qf_attributes (int atrib[])
void qt_attributes (int atrib[])
void qt_extent (char *str, int extent[])
int qt_width (int chr, int *cw, int *ldelta, int *rdelta)
int qt_name (int element, char *name)
void q_cellarray (int pxyarray[], int row_len, int nrows, int *el_used, int *rows_used, int *status, int color[]);
void qin_mode (int dev, int *mode)
void qt_fontinfo (int *minade, int *maxade, int distances[], int *maxwidth, int effects[]);
void qt_font_info (int *minade, int *maxade, int distances[], int *maxwidth, int effects[]);
ASCII TERMINAL METHODS
void q_chcells (int *n_rows, int *n_cols)
void exit_cur ()
void enter_cur ()
void curup ()
void curdown ()
void curright ()
void curleft ()
void curhome ()
void eeos ()
void eeol ()
void s_curaddress (int row, int col)
void curtext (char *s)
void rvon ()
void rvoff ()
void q_curaddress (int *cur_row, int *cur_col)
ESCAPE METHODS
int q_tabstatus ()
void hardcopy ()
void dspcur (int x, int y)
void rmcur ()
void form_adv ()
void output_window (int *pxyarray)
void clear_disp_list ()
void bit_image (const char *filename, int